Application platform refers to those computer softwares which provide the capability to embed third-party softwares. The application platform is a trend of client softwares now. The third-party applications are functional components developed by third-party developers, attached and run in appropriate client softwares. On one hand, these third-party applications rely on the application platform for publishing and promotion. On the other hand, these third-party applications enrich the features of the corresponding client softwares as functionally complement.
Plug-in system is commonly used in traditional client softwares. The plug-in system exposures a series of SDK (Software Development Kit) to enable third-party developers to develop Dynamic Link Library (dll) complied with interface specification, and to integrate the binary dll to the corresponding client software. When the function of the client software need to be evoked, the pug-in system loads the binary dll, to provide functions implemented thereby.
However, in the plug-in system, loading third-party applications may lead to instability and low performance problems of the application platform. Third-party application error would cause crash and low performance of the application platform, and the performance problem caused by the third-party applications would stay in the application platform even after the third-party applications being uninstalled. In addition, the development of the third-party applications relies on the version of application platform. For the application platform, loading expired third-party application may lead to crash. The reference count of third-party applications is easily go wrong, which may cause the application cannot be uninstalled or the application platform crash after uninstalling the third-party application. Furthermore, updating the third-party application usually has to restart the client software.